// config-center-types.js
export const EConfigAnimationsType = {
    None: 'None',
    Electricity: 'Electricity',
    WaterDrop: 'WaterDrop',
    Track: 'Track'
};

export const EConfigItemPropsType = {
    Input: 'Input',
    Color: 'Color',
    InputNumber: 'InputNumber',
    Switch: 'Switch',
    JsonEdit: 'JsonEdit',
    Select: 'Select'
};

export const EDoneJsonType = {
    File: 'File',
    StraightLine: 'StraightLine',
    ConnectionLine: 'ConnectionLine',
    CustomSvg: 'CustomSvg',
    Vue: 'Vue'
};

export default {
    IConfigComponentGroup: {
        groupType: String,
        title: String,
        list: Array
    },
    IConfigCenter: Object,
    IConfigItem: {
        name: String,
        title: String,
        display: Boolean,
        props: Object,
        type: String,
        config: {
            can_zoom: Boolean,
            have_anchor: Boolean,
            actual_rect: Boolean
        },
        common_animations: {
            val: String,
            delay: String,
            speed: String,
            repeat: String
        },
        animations: Object,
        tag: undefined,
        state: {
            OnOff: {
                title: String,
                default: false,
                props: {
                    [String]: {
                        openVal: undefined,
                        closeVal: undefined
                    }
                }
            }
        },
        tag_slot: String
    },
    IConfigItemPropsCommonAnimations: {
        val: String,
        delay: String,
        speed: String,
        repeat: String
    },
    IConfigItemProps: Object,
    IComponentImport: Object,
    IConfigItemState: Object
};

